Тайловый рендеринг – секретный рецепт архитектуры Maxwell/Pascal

Опубликовано:

nvidia 2013У последних архитектур GPU от AMD и NVIDIA есть общая черта: производители не устают рассказывать о новых функциях, но при этом тактично умалчивают детали реализации непосредственно самих потоковых процессоров. Причина понятна: компании не желают делиться с конкурентами улучшениями на аппаратном уровне, которые довольно важны для общего увеличения эффективности. Тем более что тема увеличения эффективности стояла очень остро, так как несколько лет AMD и NVIDIA приходилось довольствоваться 28-нм техпроцессом.

Дэвид Кантер (David Kanter) из Real World Tech является признанным экспертом в сфере GPU, он смог более подробно показать, какие изменения внесла NVIDIA в архитектуры Maxwell и Pascal по сравнению с Fermi и Kepler. Сама NVIDIA при объявлении первого поколения Maxwell указала прирост производительности шейдеров 35%, в случае перехода на Pascal производительность шейдеров не изменилась, если не считать преимущества перехода с 28-нм на 16-нм техпроцесс. В любом случае, будет интересно узнать причину подобного прироста производительности.

Программное обеспечение для демонстрации Tile Based Rasterization
Программное обеспечение для демонстрации Tile Based Rasterization

По всей видимости, NVIDIA для архитектур Maxwell и Pascal использовала так называемый тайловый рендеринг или растеризацию (Tile Based Rendering или Tile Based Rasterization). Тайловый рендеринг – технология не новая, она не является эксклюзивом NVIDIA. Imagination Technology или ARM уже давно опираются на Tile Based Rendering в графических ядрах PowerVR и Mali. Концепция Tile Based Rendering является противоположностью рендерингу Immediate Mode Rendering. Процесс растеризации IMR выполняется для всего кадра, в случае же TBR кадр разделяется на множество прямоугольных тайлов, и процесс растеризации выполняется уже отдельно для тайлов. Как правило, тайлы имеют размер 16x16 или 32x32 пикселей. Подобная параллелизация нагрузки отлично подходит для современных GPU с тысячами потоковых процессоров. Кроме того, у Immediate Mode Rendering довольно высокие требования к пропускной способности памяти.

У тайлового рендеринга имеется подвид под названием TBDR (Tile Based Deferred Rendering) или отложенный тайловый рендеринг. Он использовался, например, видеокартами 3dfx. Компания 3dfx приобрела технологию у Gigapixel за 150 млн. долларов США, поскольку чип GP-1 в 90-х годах привлек к себе немало внимания. Годами позже NVIDIA купила производителя видеокарт Voodoo 3dfx, и данное вложение оправдало себя в будущем.

Но у Tile Based Rendering есть и недостатки. Почти все игры и другие приложения оптимизируются под режим Immediate Mode Rendering. Поэтому с архитектурами Maxwell и Pascal NVIDIA пришлось пойти на ряд хитростей, чтобы тайловый рендеринг работал эффективно. Среди них – специальный код DirectX, управляющий растеризацией треугольников. Кроме использования Tile Based Rendering остальная часть графического конвейера осталась прежней. К ней относится тесселяция, геометрия, шейдеры и т.д.

Программное обеспечение для демонстрации Tile Based Rasterization
Программное обеспечение для демонстрации Tile Based Rasterization

Кроме NVIDIA тайловый рендеринг используют Imagination Technology и ARM. Он применялся и Intel в GPU Larabee. У приставок Microsoft Xbox 360 и Xbox One имеется 10 или 32 Мбайт памяти eDRAM/eSRAM. Ее все же недостаточно, чтобы хранить полный кадр. Поэтому встроенная на чип память (кэш) используется для хранения тайлов при использовании Tile Based Rendering, без которого не обойтись в случае 4x MSAA при разрешениях 720p или 1080p.

Схожий метод использует и NVIDIA. Пропускная способность памяти стала очень важным фактором, влияющим на производительность современных GPU. AMD и NVIDIA работают над тем, чтобы реализовать более эффективные схемы сжатия памяти, чтобы сэкономить пропускную способность. Но лучший способ экономии – отсутствие передаваемых данных, этого как раз позволяет добиться Tile Based Rendering. Соответствующие данные должны храниться во внутренней памяти GPU, поэтому и кэш L2 стал большего объема. С архитектурой Kepler NVIDIA считала достаточным 256 кбайт, у Maxwell кэш был увеличен до 2.048 кбайт.

Меньшее число операций чтения и записи в памяти приводит к увеличению эффективности энергопотребления. Таким образом, Tile Based Rendering внес свой вклад в снижение энергопотребления архитектур Maxwell и Pascal.

К сожалению, NVIDIA при объявлении архитектур Maxwell и Pascal не стала указывать подробностей, в том числе и использование Tile Based Rendering. Поэтому прошло несколько лет, прежде чем аналитики, в том числе и Дэвид Кантер, сделали соответствующее открытие. Программу, которая использовалась для анализа, можно найти на GitHub. Впрочем, Tile Based Rasterization – лишь небольшая часть улучшений, которые внесла NVIDIA в свою архитектуру. Большая их часть остается скрытой.

Социальные сети

комментарии (6)

#1
Зарегистрирован: 20.06.2015

Пользователь
Постов: 77
А в чем минусы такого рендеринга? Не просто же так его не используют повсеместно.
#2
Зарегистрирован: 23.10.2015

Новичок
Постов: 2
Возможно, из-за этого
Сообщение
3dfx приобрела технологию у Gigapixel за 150 млн. долларов США

Сообщение
NVIDIA is the only PC GPU manufacturer to use tile based rasterization

И фишка в том, что, похоже у AMD подобной технологии нет, и если представить сейчас ее реализацию на их картах и соответствующий прирост производительности процентов на 30...
#3
customavatars/avatar2759_1.gif
Зарегистрирован: 26.01.2015

Постоялец
Постов: 513
"Причина понятна: компании не желают делиться с конкурентами улучшениями на аппаратном уровне" - а также станет понятно, где и как нас обманывают. Что важнее. :)
#4
Зарегистрирован: 19.11.2014
www.moh-rus.com
Постоялец
Постов: 129
Заговоры, подговоры и просто мистика...в общем чувствую себя как 15 лет назад, когда еще ребенком смотрел РенТВ или что там..убогое и бесполезное...
#5
Зарегистрирован: 23.08.2017

Постоялец
Постов: 227
Помню когда у нвидии вышла 9 серия карт, я народу показывал ссылки на то гавно, что там вышло, что картинка там прорисовывалась не полностью. Вот вас весь тайловый рендерендинг
Чтобы показать всю красоту тайлинга, надо поставить два монитора рядом и сравнивать. Когда трава, плитка не полностью прорисовывается. Кого обманываете? На АМД радеон как была честная картинка она там так и осталась. Прибавляется фрисинк про который все забывают и начинают врать что он идет на картах нвиидии.
#6
Зарегистрирован: 23.08.2017

Постоялец
Постов: 227
Читаю оверы и удивляюсь их доля рынка интересует, а то что нвидия гонит шлак карты их не интересует, ведь недавно только владельцы страдали от DPS LATENC, то ли еще на тюринге будет. А я знаю что будет, гореть они будут, там по дешмански карты сделаны. На первых же обзорах при разборке карт уже потеки возле микросхем были.
Войдите, чтобы оставить комментарий